A common goal in the development of image output systems is improving image quality. It is known that an image processing system may be designed so as to offset the limitations of the rendering system; however, this tailoring can be difficult due to the divergent processing requirements for different image types. Further complicating the design of a system is the reality that a document may be comprised of multiple image types (image classes), including continuous tones (contones), halftones of various frequencies, text/line art, error diffused images, etc. Additionally, when processing image data generated at or targeted for a different system, the characteristics of the image data are typically not known.
To address this situation, various methods have been proposed for segmentation-based halftoning. Segmentation is a well known operation that may use any of a number of classification functions (e.g., auto-correlation, frequency analysis, pattern or template matching, peak/valley detection, histograms, etc.) to analyze video image data and classify image pixels as one of several possible image classes. A typical segmentation process generates a pixel classification signal, sometimes referred to as a segmentation tag, that identifies the pixel as a particular image type or class corresponding to high-level attributes. Some common image types (high-level attributes) include smooth contone, rough contone, text, text on tint, low frequency halftone, high frequency halftone, various intermediate frequency halftones which may be implemented as fuzzy frequencies, background and edge.
Generally, with these methods, the images are first segmented into windows, and within each window, an image processing method that is optimal to the image data within the window is applied. These windows, sometimes are also referred to as objects, are typically classified using high-level attributes semantics (e.g., smooth contone, rough contone, text, text on tint, low frequency halftone, high frequency halftone).
More particularly, such methods separate a page of image data into windows and classify and process the image data within the windows by making either one or two passes through the page of image data. The one pass method is quicker, but it does not allow the use of “future” context to correct information that has already been generated. In a two pass method, during the first pass, the image is separated into windows, and a judgment is made about the type of image data in each window. With a two pass method, during the first pass through the image data, information obtained from processing a given scanline can be used to generate or correct information for previously processed scanlines. In other words, future context can be used. At the end of the first pass, the image type for each pixel is recorded in memory. During the second pass, the information from the first pass, i.e., the image type data, is used to process the image data. An example of a two pass segmentation technique can be found in U.S. Pat. No. 5,850,474 to Fan et al., the disclosure of which is hereby incorporated by reference in its entirety. Additional details on segmentation and image classification can be found in numerous references including, for example, the following U.S. Patents: U.S. Pat. No. 5,327,262 to Williams; U.S. Pat. No. 5,765,029 to Schweid et al.; U.S. Pat. No. 5,778,156 to Schweid et al. and U.S. Pat. No. 5,852,678 to Shiau et al.
While segmentation techniques such as those generally described above provide means for accurately identifying regions within a document and assigning an image type to the regions, the use of such high-level attributes do not necessarily correlate very well with an optimal or favorable halftoning method. In addition, such high level segmentation operations can call for extensive processing and/or resource requirements. Furthermore, there is always desired a method or system which provides an improvement on existing systems or methods. Such improvement may come in the form of improved performance, efficiency, and/or cost, and may include, but is not limited to one or more of reduced hardware or software complexity, reduced system resource requirements (e.g., processing and/or memory), increased speed, increased accuracy, etc.
In accordance with one or more aspects of the teachings herein there is provided a method for reproducing document images wherein an image is segmented into low-level regions that are separated with each other by edges. A region need not necessarily be associated with any high level attributes or meanings. A favorable halftoning method is then selected for the region according to its low-level image processing properties, such as the dimensions, the brightness (color) distribution, and the smoothness of the region.
In accordance with one or more aspects of the teachings herein there is provided a method for selecting a halftoning mode to be applied to an image, comprising: receiving image data; identifying a region in the image data; determining low-level image attributes for the region; and selecting a halftone mode to be applied to the region based on the low-level image attributes of the region.
In accordance with one or more aspects of the teachings herein there is provided a method for selecting a method for selecting a halftoning for use within an image. The method includes receiving image data; segmenting the received image data to identify a low-level region within the image; determining low-level image attributes for the region; and selecting a halftone mode to be applied to the region based on the low-level image attributes determined for the region.